package com.qujia.customer.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.qujia.common.annotation.Excel;
import com.qujia.common.core.domain.BaseEntity;

/**
 * 客户管理对象 customer_manage
 *
 * @author qujia
 * @date 2021-01-22
 */
public class CustomerManage extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 会员卡id */
    @Excel(name = "会员卡id")
    private String memberId;

    /** 客户姓名 */
    @Excel(name = "客户姓名")
    private String customerName;

    /** 推荐人 */
    @Excel(name = "推荐人")
    private String commendMan;


    /** 手机号 */
    @Excel(name = "手机号")
    private String phoneNumber;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String carNumber;

    /** 余额 */
    @Excel(name = "余额")
    private BigDecimal balance;

    /** 积分 */
    @Excel(name = "积分")
    private Long integral;

    /** 专车类型 */
    @Excel(name = "专车类型")
    private String specialCarType;

    /** 注册时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "注册时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date regtime;

    /** 油站id */
    @Excel(name = "油站id")
    private Long stationId;

    /** 油站名称 */
    @Excel(name = "油站名称")
    private String stationName;

    /** 柴油加油消费总金额 */
    @Excel(name = "柴油加油消费总金额")
    private BigDecimal cyAmt;

    /** 汽油加油消费总金额 */
    @Excel(name = "汽油加油消费总金额")
    private BigDecimal qyAmt;

    /** 小程序的userid */
    @Excel(name = "小程序的userid")
    private Long minaUserId;

    /** 油品名称 */
    @Excel(name = "油品名称")
    private String oilName;

    /** 等级 */
    @Excel(name = "等级")
    private String grade;

    /** 总升数 */
    @Excel(name = "总升数")
    private BigDecimal liters;

    /** 总金额 */
    @Excel(name = "总金额")
    private BigDecimal amt;

    /** 微信UnionID */
    @Excel(name = "微信UnionID")
    private String unionId;
    private Date payDate;
    private String fyAmt;
    private String lngAmt;
    private String cngAmt;

    /** 会员编码 */
    @Excel(name = "会员编码")
    private String memberCode;


    /** 油企id */
    private Long enterpriseId;

    /** 来源0微信1支付宝2其他 */
    @Excel(name = "来源0微信1支付宝2其他 ")
    private String source;



    /** 性别0男1女2未知 */
    @Excel(name = "性别0男1女2未知")
    private String sex;



    /** 生日*/
    @Excel(name = "生日")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date birthday;

    /** 昵称*/
    @Excel(name = "昵称")
    private String nickName;

    /**首次消费的油站id*/
    private Long firstStationId;



    /** 注册油站*/
    private Long registerStationId;

    /** 支付宝id*/
    private String aliUserId;

    /** 油品id*/
    private Long oilId;


    /** 车辆品牌*/
    @Excel(name = "车辆品牌")
    private String truckBrand;

    /** 数量*/
    private Long count;


    public String getMemberCode() {
        return memberCode;
    }

    public void setMemberCode(String memberCode) {
        this.memberCode = memberCode;
    }

    public Long getEnterpriseId() {
        return enterpriseId;
    }

    public void setEnterpriseId(Long enterpriseId) {
        this.enterpriseId = enterpriseId;
    }

    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source;
    }


    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public Date getBirthday() {
        return birthday;
    }

    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public Long getFirstStationId() {
        return firstStationId;
    }

    public void setFirstStationId(Long firstStationId) {
        this.firstStationId = firstStationId;
    }

    public Long getRegisterStationId() {
        return registerStationId;
    }

    public void setRegisterStationId(Long registerStationId) {
        this.registerStationId = registerStationId;
    }

    public String getAliUserId() {
        return aliUserId;
    }

    public void setAliUserId(String aliUserId) {
        this.aliUserId = aliUserId;
    }

    public Long getOilId() {
        return oilId;
    }

    public void setOilId(Long oilId) {
        this.oilId = oilId;
    }

    public String getTruckBrand() {
        return truckBrand;
    }

    public void setTruckBrand(String truckBrand) {
        this.truckBrand = truckBrand;
    }

    public Long getCount() {
        return count;
    }

    public void setCount(Long count) {
        this.count = count;
    }

    public String getFyAmt() {
        return fyAmt;
    }

    public void setFyAmt(String fyAmt) {
        this.fyAmt = fyAmt;
    }

    public String getLngAmt() {
        return lngAmt;
    }

    public void setLngAmt(String lngAmt) {
        this.lngAmt = lngAmt;
    }

    public String getCngAmt() {
        return cngAmt;
    }

    public void setCngAmt(String cngAmt) {
        this.cngAmt = cngAmt;
    }

    public Date getPayDate() {
        return payDate;
    }

    public void setPayDate(Date payDate) {
        this.payDate = payDate;
    }

    /**
     * 根据用户所属组织，平台，集团，油站查询条件
     */
    private List<String> stationIdList;

    public List<String> getStationIdList() {
        return stationIdList;
    }

    public BigDecimal getCyAmt() {
        return cyAmt;
    }

    public void setCyAmt(BigDecimal cyAmt) {
        this.cyAmt = cyAmt;
    }

    public BigDecimal getQyAmt() {
        return qyAmt;
    }

    public void setQyAmt(BigDecimal qyAmt) {
        this.qyAmt = qyAmt;
    }

    public void setStationIdList(List<String> stationIdList) {
        this.stationIdList = stationIdList;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setMemberId(String memberId)
    {
        this.memberId = memberId;
    }

    public String getMemberId()
    {
        return memberId;
    }
    public void setCustomerName(String customerName)
    {
        this.customerName = customerName;
    }

    public String getCustomerName()
    {
        return customerName;
    }
    public void setCommendMan(String commendMan)
    {
        this.commendMan = commendMan;
    }

    public String getCommendMan()
    {
        return commendMan;
    }

    public void setPhoneNumber(String phoneNumber)
    {
        this.phoneNumber = phoneNumber;
    }

    public String getPhoneNumber()
    {
        return phoneNumber;
    }
    public void setCarNumber(String carNumber)
    {
        this.carNumber = carNumber;
    }

    public String getCarNumber()
    {
        return carNumber;
    }
    public void setBalance(BigDecimal balance)
    {
        this.balance = balance;
    }

    public BigDecimal getBalance()
    {
        return balance;
    }
    public void setIntegral(Long integral)
    {
        this.integral = integral;
    }

    public Long getIntegral()
    {
        return integral;
    }
    public void setSpecialCarType(String specialCarType)
    {
        this.specialCarType = specialCarType;
    }

    public String getSpecialCarType()
    {
        return specialCarType;
    }
    public void setRegtime(Date regtime)
    {
        this.regtime = regtime;
    }

    public Date getRegtime()
    {
        return regtime;
    }
    public void setStationId(Long stationId)
    {
        this.stationId = stationId;
    }

    public Long getStationId()
    {
        return stationId;
    }
    public void setStationName(String stationName)
    {
        this.stationName = stationName;
    }

    public String getStationName()
    {
        return stationName;
    }

    public void setMinaUserId(Long minaUserId)
    {
        this.minaUserId = minaUserId;
    }

    public Long getMinaUserId()
    {
        return minaUserId;
    }
    public void setOilName(String oilName)
    {
        this.oilName = oilName;
    }

    public String getOilName()
    {
        return oilName;
    }
    public void setGrade(String grade)
    {
        this.grade = grade;
    }

    public String getGrade()
    {
        return grade;
    }
    public void setLiters(BigDecimal liters)
    {
        this.liters = liters;
    }

    public BigDecimal getLiters()
    {
        return liters;
    }
    public void setAmt(BigDecimal amt)
    {
        this.amt = amt;
    }

    public BigDecimal getAmt()
    {
        return amt;
    }
    public void setUnionId(String unionId)
    {
        this.unionId = unionId;
    }

    public String getUnionId()
    {
        return unionId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("memberId", getMemberId())
            .append("customerName", getCustomerName())
            .append("commendMan", getCommendMan())
            .append("phoneNumber", getPhoneNumber())
            .append("carNumber", getCarNumber())
            .append("balance", getBalance())
            .append("integral", getIntegral())
            .append("specialCarType", getSpecialCarType())
            .append("regtime", getRegtime())
            .append("stationId", getStationId())
            .append("stationName", getStationName())
            .append("minaUserId", getMinaUserId())
            .append("oilName", getOilName())
            .append("grade", getGrade())
            .append("liters", getLiters())
            .append("amt", getAmt())
            .append("unionId", getUnionId())
            .toString();
    }
}
